package org.example.demo3.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.example.demo3.enity.User;
import org.example.demo3.enity.message;

import java.util.Optional;

@Mapper
public interface UserMapper extends BaseMapper<User> {
    // 根据用户名查找用户
    Optional<User> findByUsername(String username);

    // 根据用户ID查找用户
    Optional<User> findById(Long id);

    // 创建新用户
    int insert(User user);

    // 更新用户信息
    int update(User user);

    // 更新用户状态
    int updateStatus(Long id, Integer status);

    // 检查用户名是否存在
    boolean existsByUsername(String username);

    // 检查邮箱是否存在
    boolean existsByEmail(String email);

    // 检查邮箱是否被其他用户使用
    boolean existsByEmailAndIdNot(String email, Long userId);
}